#include <iostream>    
#include <vector>    
    
using namespace std;    
    
vector<int> multiply(vector<int>& poly1, vector<int>& poly2) {    
    if(poly1.size() != poly2.size()){  
        // 如果两个多项式的长度不同，返回错误  
        return {-1};   
    }  
    int n = poly1.size();    
    vector<int> result(n, 0);  // 初始化结果向量为0    
    
    for (int i = 0; i < n; i++) {    
        for (int j = 0; j < n; j++) {  // 这里应该是n而不是m，因为我们是和poly1的长度一样的大小  
            result[i + j] += poly1[i] * poly2[j];  // 将两个多项式的系数相乘并累加    
        }    
    }    
    
    return result;    
}    
    
int main() {    
    vector<int> poly1 = {2, 3, 4}, poly2 = {1, 5};  // 两个多项式    
    vector<int> result = multiply(poly1, poly2);  // 相乘    
    
    // 输出结果    
    if(result[0] != 0){ // 如果结果不为0，则打印结果  
        for (int i = result.size() - 1; i >= 0; i--) {    
            cout << result[i];    
            if (i > 0) cout << "x^" << i;    
            if (i == result.size() - 1) cout << endl;    
        }    
    }else{ // 如果结果为0，则不打印任何内容  
        cout << "The result is zero." << endl;   
    }  
    
    return 0;    
};```